home *** CD-ROM | disk | FTP | other *** search
- Eric Gans
- French Department, UCLA
- Los Angeles CA, 90024
-
- RESPRO.DOC v1.2
- 03/19/86
-
- Version 1.2:
- Enabled command-line operation. Fixed bug that allowed
- loading a second copy of RESPRO. RESPRO now checks specifically
- for the presence of SideKick; it disables itself if there are
- over 24 memory-resident programs loaded.
-
- Version 1.1: Added "C" command to clear memory, options to change
- "hot keys." RESPRO now checks for programs removed from memory.
- Also a few minor changes to handle troublesome cases like
- Sidekick.
-
- * * *
-
- If like most DOS users you have filled your RAM with memory
- resident programs, RESPRO is for you. RESPRO will handle up to
- 24 memory-resident programs. It allows you to disable and
- reactivate them at any time, from within any application. You
- can clear your memory of all resident programs, or remove the
- last program loaded regardless of what it says in its user manual
- or DOC file.
-
- RESPRO also includes an "uncrash" feature that allows you to exit
- a hung program under most circumstances without having to reboot
- your computer.
-
- How Do Memory-Resident Programs Work?
-
- Memory-resident programs are loaded like any others; they remain
- resident because DOS allows them to keep the memory originally
- allocated to them. If you load a series of such programs, they
- fill your RAM from the bottom up.
-
- But residing is only useful if these programs can remain active.
- They accomplish this by capturing "interrupt vectors" used by
- various computing activities. Most resident programs look at one
- or both of the keyboard interrupts (9 and 16h) to see if you have
- typed the particular combination of characters that triggers
- their operations. If not, control is passed to the next program
- down the list, and eventually to the BIOS that prints the
- character on the screen.
-
- How Does RESPRO Work?
-
- RESPRO itself operates by capturing interrupt vectors and using
- its time of control to record information concerning the
- interrupts used by other memory-resident programs. RESPRO
- records all changes that follow the loading of new resident
- programs. This allows it to disable/reactivate memory-resident
- programs by bypassing/restoring these programs' captured
- interrupts. RESPRO 1.1+ also checks to see if a memory-resident
- program has been removed independently of its own operations. If
- the removed program was not the last loaded, RESPRO gives a
- warning message when you attempt to use it to disable, activate,
- or remove other programs.
-
- Set-Up and Memory Requirements
-
- To use RESPRO effectively, you should load it before any other
- memory-resident programs (including those that tell you they
- should be loaded first). RESPRO will only "see" programs loaded
- after it; it will always appear as #1 on its list of memory-
- resident programs.
-
- RESPRO occupies about 11 K of memory, largely for buffers to hold
- interrupt data. It requires DOS 2.0 or higher.
-
- RESPRO Operation
-
- RESPRO is evoked by typing Alt ` (grave accent). (See below for
- how to change this.) On evocation, and after any command, it
- displays a list of memory-resident programs, their load addresses
- and the number of bytes they occupy.
-
- The resident command menu permits the following operations:
-
- (V)erbose toggle: Entering "v" toggles a mode that displays
- the interrupts captured by each resident program and their
- addresses (segment:offset). This is chiefly of use to
- programmers.
-
- (R)emove last: This will remove the last resident program
- from memory, freeing the memory for other applications. RESPRO
- will not allow you to perform this operation from within an
- application that has changed some of the interrupt vectors used
- in the program(s) you wish to remove, since on exiting these
- vectors will be reset to locations in the killed program that
- will eventually be overwritten. (It makes an exception if
- Sidekick has "recaptured" the interrupt, as it does in certain
- cases if you load a resident program after it.) Because RESPRO
- cannot check for the future memory demands of your applications,
- this command should always be used with caution from within other
- programs.
-
- (C)lear memory: This will remove all memory-resident
- programs above RESPRO itself. If your current application has
- reset any interrupt vectors you will be required to exit it
- before using this command.
-
- (D)isable #: Entering "d3" will disable program #3. This
- operation may be performed without danger at any time, since it
- does not remove the program from memory. A disabled program will
- not use processor time or perform any other function. Any
- program thus disabled can be reactivated with the (A) command.
-
- (A)ctivate #: Enter "a3" to reactivate the program you
- disabled with "d3". This operation too can be performed safely
- at any time.
-
- Type <ESC> to exit. (No CR is necessary.)
-
- If you disable RESPRO it will remain in memory but no longer be
- operative, and you will no longer be able to call up its screen.
- This is the one (obvious) exception to the rule that all disabled
- programs can be reactivated.
-
- A few applications (like Xywrite) that capture the keyboard
- interrupts for themselves will not let you call up RESPRO while
- they are running. This will not be the case for most word-
- processors, spreadsheets, database programs, or BASIC.
-
- *!*!* Command-line Options *!*!*
-
- Version 1.2 allows the use of the D, A, R and C commands from the
- DOS command line. RESPRO must be already in memory for the
- switches to function; it cannot be loaded if any switches are
- included in the command line.
-
- The chief value of these options is to allow the use of RESPRO in
- application-specific batch files. You can choose which resident
- programs are to be active while running a given application,
- disable the others, and reactivate them on exit; or you can
- remove and reload them.
-
- Syntax: respro [/?][/r][/c][/d fn.ft][/a fn.ft] [/k][/u]
-
- The '/?' switch gives a brief help message and exits the program.
-
- The '/r' and '/c' switches perform the same operations (remove
- last program and clear) as entering 'r' or 'c' from the resident
- command menu. The disable/ enable functions take a filename
- rather than a number. The filename must include the extension.
-
- The '/k' (formerly 'c') and '/u' switches are used for changing
- hotkeys (see below).
-
- Any combination of switches is allowed on the command line. If
- you wish to disable or activate several programs, each filename
- must be preceded by the appropriate switch. Switches will be
- acted on from left to right. Spaces are recommended for clarity,
- but no space is allowed between the '/' and the switch letter.
-
- NB - The '/c' switch (like the 'c' command) removes all programs
- above RESPRO. If you want to remove RESPRO as well, enter:
- respro /c /r
-
- To remove the last three resident programs loaded, enter:
- respro /r /r /r
-
- The /k and /u switches are interactive and therefore not suited
- to automatic batch file operation.
-
- Uncrash Feature
-
- Since RESPRO keeps interrupt tables, it can handle this function
- more gracefully than other such programs. If you get caught in
- an endless loop but your keyboard is still alive, you can exit to
- DOS or the "parent" process (e.g., DEBUG) by simultaneously
- pressing the CAPS LOCK and the SCROLL LOCK keys. (This operation
- is independent of the current status of these keys; see below for
- how to change them.) We can't absolutely guarantee that
- everything will be all right on exit, but this procedure may
- allow you to save files that would otherwise be lost.
-
- Changing Hot Keys
-
- The key combinations used to evoke RESPRO may be changed by using
- the following command-line switches:
-
- respro /k (formerly 'respro c') will change the keys for normal
- operation
-
- respro /u (formerly 'respro u') will change the keys for
- "uncrash" operation
-
- These switches may be combined with each other and with any of
- the other command-line switches.
-
- Normal operation uses an ASCII key plus a combination of shifts
- (Ctl, Alt, Lshift, Rshift). The uncrash feature requires a
- combination of Ins, Caps Lock, Num Lock, Scroll Lock and/or
- SysReq (for AT users). Hold the shift keys down an instant until
- the program registers the new values.
-
- These changes will be recorded on disk, so RESPRO should be in
- the current directory when running these commands. They will
- take effect the next time RESPRO is loaded into memory.
-
- RESLOG Compatibility
-
- If you use RESLOG along with RESPRO, you should be sure to load
- RESPRO first. RESLOG will continue to operate even if RESPRO is
- disabled.
-
-
- I hope you enjoy using RESPRO.